<?php #coding: utf-8 æ ø å ?

class Vis extends CI_Controller {


	function __construct()
	{
	parent::__construct();
	$this->is_logged_in();
	}



	function hieraki()
	{	
		$type = $this->uri->segment(4,0);
	
		$this->load->model('all/vis_model');
		
		$data['rows'] = $this->vis_model->hieraki($type);
		$data['type'] = $type;
		$indhold = array();
	
	
		/*if($type == "begivenhed")
		{
			$indhold[] = 'begivenhed/indhold/hieraki';
		}
		elseif($type == "entitet")
		{
			$indhold[] = 'entitet/hieraki';
		}
		elseif($type == "sted")
		{
			$indhold[] = 'all/hieraki';
		}*/
		
		$indhold[] = 'all/hieraki';
		
		$data['main_content'] = $indhold;
		$this->load->view('template', $data);
	}


	function alle()
	{
		$type = $this->uri->segment(4,0);
	
		if($type == "entitet")
		{
			$this->load->database();

			$this->load->model('all/vis_model');
			$data['rows'] = $this->vis_model->alle("entitet");
			$indhold = array();
			$indhold[] = 'entitet/alle';
			$indhold[] = 'entitet/indhold/menu';
			$data['main_content'] = $indhold;
			$this->load->view('template', $data);
		}
	}


	function ikke_se() 
	{

//		$data['vis_bogmaerker'] = "nej";

		$session = $this->session->userdata('username');
         $id = $this->uri->segment(4);
//         blader i bogen-funktion
        $data['next_id'] = $id+1;
        $data['prev_id'] = $id-1;
        $data['next_page'] = base_url()."core/vis/se/sted/".$data['next_id'];
        $data['prev_page'] = base_url()."core/vis/se/sted/".$data['prev_id'];

		// Sidehoveder og sidefødder, og halsen af en svane
		$data['left_sidehoved_left'] = "";
		$data['left_sidehoved_right'] = "";
		$data['overskrift_right'] = "Siden er hemmelig for dig";
		$data['overskrift_left'] = "Siden er hemmelig for dig";

		$data['layout'] = "spalter";

		$indhold_right[] = '';
		$indhold_left[] = '';
		
		$data['content_left'] = $indhold_left;
		$data['content_right'] = $indhold_right;
		$this->load->view('includes/templates/bogpaapult',$data); // 2 * $indhold
    }
	
	
/* denne funktion viser een entitet / eet sted / een begivenhed */
	function se() 
	{
       	

//---MODELLER---

		//henter modeller
		$this->load->model('core/vis_model');	
		$this->load->model('indhold/beskrivelse');	
		$this->load->model('indhold/element_beskrivelse');
		$this->load->model('rettighed_model');			
		$this->load->model('media_model');
		$this->load->model('translation/ord_model');
		$this->load->model('translation/tid_model');
		$this->load->model('translation/array_model');
		$this->load->model('translation/database_tekst_model');		
		$this->load->model('struktur_model');
		$this->load->model('core/kampagne');
		$this->load->model('rolemaster/karakterark_model');
		$this->load->model('phpfunktioner/sorterings_model');
		$this->load->model('core/gruppe');
		$this->load->model('core/individ');
		$this->load->model('core/player_character');
		$this->load->model('core/gruppe_styring');
		$this->load->model('forord/kilde_model');
		//$this->load->model('core/'.$type) hentes længere nede (under URI)

//---URI---
	
		//henter typen fra uri

		$type = $this->uri->segment(4,0); //angiver om der er tale om entitet, sted eller begivenhed.
		$data['type'] = $type;
		if(!in_array($type, array("kampagne","individ","gruppe", "player_character"))){	

			$this->load->model('core/'.$type);
		}


		//henter id fra uri
		$id = $this->uri->segment(5,0);
		$id = (int) $id;
		$data['id'] = $id;

		//redirecter til deltagerforsiden, hvis id'et ikke er sat på det der skal vises.
		if(!isset($id) || $id == 0)
		{
			redirect('deltager/dashboard');
		}

		//---SESSION---
		
		//henter ingame- og deltageroplysninger fra sessionen
		$deltager = $this->session->userdata('deltager');
        $data['deltager'] = $deltager;
		$ingame = $this->session->userdata('ingame');
		$ingame_id = $ingame['ingame_id'];
		$data['ingame'] = $ingame;
			//echo "<br>(controller>core/vis) deltager er "; print_r($deltager);
			//echo "<br>(controller>core/vis) ingame er "; print_r($ingame);

				
		//henter kampagneoplysninger /xxx skal laves!! Nu pr. def. sat til Civilisation!
		$kampagne_id = $ingame['kampagne_id'];
		$kampagne = new kampagne();
		$kampagne->find_ingame_nu($kampagne_id);
		$data['ingame_nu'] = $kampagne->ingame_nu;        
		$kampagne->find_kampagne($kampagne_id);
		$data['gm'] = $kampagne->gamemaster;
		//print_r($data['gm']);

		//---HEMMELIGT?---
		$element = new $type();
		$element->afgoer_rettighed($id);
		$er_jeg_admin = $element->er_jeg_admin;
		$maa_jeg_se = $element->maa_jeg_se;
		$data['er_jeg_admin'] = $element->er_jeg_admin;


        			
		if($maa_jeg_se == "nej")
		{
			echo "Elementet er hemmeligt og ikke delt med dig!";
			echo anchor("deltager/dashboard/".$ingame_id,'Gå til Dashboard');
            redirect("core/vis/ikke_se/".$id);
		}

		$data['primaer_billede'] = $this->media_model->vis_primaer_billede($id);


		//henter navigation fra uri
		$data['navigation'] = $this->uri->segment(6,0);
		if($data['navigation']=="0")
		{
			//$data['navigation']="billede";
			$data['navigation']="beskrivelser";
		}

		
		//---STAMDATA---henter stamdata (birth og death) og navne ud fra id'et			
		$element->find_stamdata($id);
		$data['stamdata'] = $element->stamdata; 

		$element->find_navne($id);
		$data['navne'] = $element->navne;
        if(empty($data['navne'])) { $data['navne'][0] = "Intet navn"; }
			//print_r($data['navne']);

		//Her defineres hængelåsen som åben eller lukket, på baggrund af, om man er admin eller ej.
		if($er_jeg_admin == "ja")
		{ 
			$this->load->model('rettighed/administrator');
			$admin = new administrator();
			$admin->administratorer($id);
			$admin->ikke_admin($id);
			$data['administratorer'] = $admin->administratorer;
			$data['ikke_admin'] = $admin->ikke_administratorer;

			$data['padlock'] = "<a title='Administration' style='float:left;' href='".base_url()."core/vis/se/".$type."/".$data['stamdata']['id']."/rettighed_deling'><img src='".base_url()."/img/ikoner/haengelaas_aaben.png' style='height:25px;'  /></a>";
		}
		else
		{
		$data['padlock'] = "<img title='du er ikke admin' src='".base_url()."/img/ikoner/haengelaas_lukket.png' style='float:left;' />";
		}


		//---CHECK---
		
		//check om uri og type passer sammen
		$element->check_id_type_match($id, $type);
		$match = $element->id_type_match;
		if($match == "nej"){ redirect('videresend/gaatil/side/'.$id); }



	
		//posts 
			//soeg
		if($this->input->post('soeg'))
		{

			$this->load->model('soeg/soeg_model');
			$data['kriterie'] = $this->input->post('kriterie');
			$data['omraade'] = $this->input->post('omraade');
			$data['resultater'] = $this->soeg_model->soeg($data['kriterie'], $data['omraade']);		
		}

//         blader i bogen-funktion
        $data['next_id'] = $id+1;
        $data['prev_id'] = $id-1;
        $data['next_page'] = base_url()."core/vis/se/sted/".$data['next_id'];
        $data['prev_page'] = base_url()."core/vis/se/sted/".$data['prev_id'];

        // Henter kildehenvisninger og placerer dem i højre sidefod
        $data['kilder'] = $this->kilde_model->find_henvisning_til_kilde($id);
        $data['underskrift_right'] = $data['kilder'];
		
		//beskrivelser
		$element->find_beskrivelser($id);
		$data['beskrivelser'] = $element->beskrivelser;
			//print_r($data['beskrivelser']);


		//ord
		$data['birth_ord'] = $element->birth_ord;
		$data['death_ord'] = $element->death_ord;

        // Overskrift right på baggrund navigations-uri  

        if($this->uri->segment(6) == "rediger_beskrivelse"){ $data['overskrift_right'] = "Rediger Detalje";}
        elseif($this->uri->segment(6) == "opret_beskrivelse"){ $data['overskrift_right'] = "Tilføj Detalje";}
        elseif($this->uri->segment(6) == "vis_beskrivelse"){ $data['overskrift_right'] = "Detalje - Uddybning";}
        elseif($this->uri->segment(6) == "upload_billede"){ $data['overskrift_right'] = "Opload Billede";}
        elseif($this->uri->segment(6) == "rediger_deltagere"){ $data['overskrift_right'] = "Rediger Deltagere";}
        elseif($this->uri->segment(6) == "rediger_historie"){ $data['overskrift_right'] = "Rediger Historie";}

        elseif($this->uri->segment(6) == "rediger_over"){ $data['overskrift_right'] = "Rediger Over".$this->uri->segment(4)."er";}
        elseif($this->uri->segment(6) == "rediger_under"){ $data['overskrift_right'] = "Rediger Under".$this->uri->segment(4)."er";}
		elseif($this->uri->segment(6) == "alle_grupper_af_type"){ 
			$gruppe = new gruppe();
			$gruppe->find_type($id);
			$data['type_id'] = $gruppe->type_id;
			$data['type_gruppe'] = $gruppe->type;
			$data['grupper'] = $this->gruppe_styring->find_alle_grupper_af_type($data['type_id']);
			$data['overskrift_right'] = "Alle ".$data['type_gruppe'];
		}
		elseif($this->uri->segment(6) == "rediger_titel_i_gruppe"){ 
			$data['overskrift_right'] = "Tildel titel";
		}
        elseif($this->uri->segment(6) == "rediger_henvisninger"){ $data['overskrift_right'] = "Rediger henvisninger";}
        else { $data['overskrift_right'] = "Detaljer";}
        



		$this->load->view('core/'.$type,$data);

	}
		

	function slettet(){
		
		

		$id = $this->uri->segment(4);


//         blader i bogen-funktion
        $data['next_id'] = $id+1;
        $data['prev_id'] = $id-1;
        $data['next_page'] = base_url()."core/vis/se/sted/".$data['next_id'];
        $data['prev_page'] = base_url()."core/vis/se/sted/".$data['prev_id'];
		$data['id'] = $id;

		$data['overskrift_left'] = "Side ".$id." er slettet";

		$data['content_left'] = array("fejl/element_slettet");		
		$this->load->view('includes/templates/bogpaapult',$data);
		

	}




	function is_logged_in()
	{
		// Definerer session med $is_logged_in
		$deltager = $this->session->userdata('deltager');
		$ingame = $this->session->userdata('ingame');


			//echo "deltager er "; print_r($deltager);
			//echo "ingame er "; print_r($ingame);

		if(empty($deltager) or empty($ingame))
		{



            $redirect['url'] = $this->uri->uri_string();
            $redirect['side'] = $this->uri->segment(5);
	    	$this->session->set_userdata('redirect', $redirect);      
			// Viser header, tilskuer.php med besked om "at det ikke lykkedes at blive deltager" og footer 
            

			redirect('login');
		
		 		
		}
	}
	

}

?>
